using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.ModelConfiguration;
using SMWJamecl.BusinessEntities;

namespace SMWJamecl.Repository.Mapping
{
    public class AccesorioMap : EntityTypeConfiguration<Accesorio>
    {
        public AccesorioMap()
        {
            // Primary Key
            this.HasKey(t => t.Id_Accesorio);

            // Properties
            this.Property(t => t.Id_Accesorio)
                .HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);

            this.Property(t => t.Desc_Accesorio)
                .HasMaxLength(50);

            // Table & Column Mappings
            this.ToTable("Accesorio");
            this.Property(t => t.Id_Accesorio).HasColumnName("Id_Accesorio");
            this.Property(t => t.Id_TipoAccesorio).HasColumnName("Id_TipoAccesorio");
            this.Property(t => t.Desc_Accesorio).HasColumnName("Desc_Accesorio");

            // Relationships
            this.HasRequired(t => t.TipoAccesorio)
                .WithMany(t => t.Accesorios)
                .HasForeignKey(d => d.Id_TipoAccesorio);

        }
    }
}
